/*
 * Licensed to the Tai Ping Jin Ke
 *
 * Copyright (c) 2022 .
 * All rights reserved.
 * 项目名称：呼叫中心-数据源-数据持久层-任务调度
 * 版权说明：本软件属太平金融科技服务(上海)有限公司所有，在未获得太平金融科技服务(上海)有限公司正式授权情况下，任何企业和个人，不能获取、阅读、安装、传播本软件涉及的任何受知识产权保护的内容。
 */
package com.taiping.cc.job.dataobject;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.taipingframework.mybatis.BaseDataObject;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 响应逻辑配置表
 * </p>
 *
 * @author 周孝兵
 * @since 2021-11-29
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@KeySequence(value = "SEQ_HTTP_RESPONSE_CONFIG_ID")
@TableName("HTTP_RESPONSE_CONFIG")
public class HttpResponseConfigDO extends BaseDataObject {

    private static final long serialVersionUID = 1L;

    /**
     * 响应逻辑配置表业务主键ID
     */
    @TableField(fill = FieldFill.INSERT, value = "RESPONSE_ID")
    private String responseId;

    /**
     * 平台CODE
     */
    @TableField("PLATFORM_CODE")
    private String platformCode;

    /**
     * 平台NAME
     */
    @TableField("PLATFORM_NAME")
    private String platformName;

    /**
     * 网络服务CODE
     */
    @TableField("SERVICE_CODE")
    private String serviceCode;

    /**
     * 网络服务NAME
     */
    @TableField("SERVICE_NAME")
    private String serviceName;

    /**
     * 映射业务数据的根路径，依据该路径的字符特征可判断是否在解析JSON数组
     */
    @TableField("ROOT_MAP_PATH")
    private String rootMapPath;

    /**
     * 是否分批返回：P-普通分页返回，D-深分页返回，N-全量返回
     */
    @TableField("BATCH_RETURN")
    private String batchReturn;

    /**
     * 当前页键的路径(要求BATCH_RETURN设置为P)
     */
    @TableField("CURRENT_PAGE_KEY")
    private String currentPageKey;

    /**
     * 总页数键的路径(要求BATCH_RETURN设置为P)
     */
    @TableField("TOTAL_PAGE_KEY")
    private String totalPageKey;

    /**
     * 批量返回时的起始页码(要求BATCH_RETURN设置为P)
     */
    @TableField("START_PAGE_NO")
    private Long startPageNo;

    /**
     * 是否继续返回的路径(要求BATCH_RETURN设置为D)
     */
    @TableField("HAS_MORE_KEY")
    private String hasMoreKey;

    /**
     * 上一页最后一条数据标识的路径(要求BATCH_RETURN设置为D)
     */
    @TableField("PRE_PAGE_LAST_RECORD_KEY")
    private String prePageLastRecordKey;

    /**
     * 响应数据的解析方式：A - AES解析，B64 - BASE64解码
     */
    @TableField("DATA_PARSE_TYPE")
    private String dataParseType;

    /**
     * 用于解密或解码的秘钥
     */
    @TableField("DECRYPT_KEY")
    private String decryptKey;

    /**
     * 影响内容的数据格式：J - JSON格式，T - TEXT文本格式，X - XML格式
     */
    @TableField("RESPONSE_BODY_DATA_TYPE")
    private String responseBodyDataType;

    /**
     * 配置的有效性：Y - 有效，N - 无效
     */
    @TableField("CONFIG_STATUS")
    private String configStatus;

    /**
     * 备注
     */
    @TableField("REMARK")
    private String remark;


}
